home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 19 / CU Amiga Magazine's Super CD-ROM 19 (1998)(EMAP Images)(GB)[!][issue 1998-02].iso / CUCD / Programming / LEDA / prog / graphics / matching.c < prev    next >
C/C++ Source or Header  |  1994-08-05  |  772b  |  40 lines

  1. #include <LEDA/graph_edit.h>
  2. #include <LEDA/graph_alg.h>
  3.  
  4.  
  5. main()
  6.   GRAPH<point,int> G;
  7.   window W;
  8.   edge e;
  9.  
  10.   W.set_line_width(1);
  11.   W.set_node_width(12);
  12.  
  13.   graph_edit(W,G,false);
  14.  
  15.   for(;;)
  16.   { 
  17.     list<edge> L = MAX_CARD_MATCHING(G);
  18.  
  19.     // show matching
  20.     W.set_line_width(5);
  21.     forall(e,L) W.draw_edge(G[source(e)],G[target(e)]);       
  22.  
  23.     W.message("MAX_CARD_MATCHING");
  24.     W.message("(press left button to return to graph edit)");
  25.     if (W.read_mouse() != 1) break;
  26.     W.del_message();
  27.  
  28.     // restore picture
  29.     forall(e,L) W.draw_edge(G[source(e)],G[target(e)],white); 
  30.     W.set_line_width(1);
  31.     forall(e,L) W.draw_edge(G[source(e)],G[target(e)]);
  32.  
  33.     graph_edit(W,G,false,false);     // 2nd false: do not clear window
  34.  
  35.    }
  36.  
  37.   return 0;
  38. }
  39.